// 2727. 判断对象是否为空
// 给定一个对象或数组，判断它是否为空。
//
// 一个空对象不包含任何键值对。
// 一个空数组不包含任何元素。
// 你可以假设对象或数组是通过 JSON.parse 解析得到的。
/**
 * @param {Object | Array} obj
 * @return {boolean}
 */
var isEmpty = function (obj) {
  const typeHelper = (o) => {
    return Object.prototype.toString.call(o).slice(8, -1).toLowerCase()
  }

  const typeStr = typeHelper(obj)
  if (typeStr === 'array') {
    return obj.length === 0
  } else if (typeStr === 'object') {
    let flag = true
    for (const objKey in obj) {
      if (obj.hasOwnProperty(objKey)) {
        flag = false
        break
      }
    }

    return flag
  }
}

console.log(
  isEmpty({a: 2})
)
